package com.iris.live.services.data.models;

import com.fasterxml.jackson.annotation.JsonProperty;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * Created by xin on 2016/7/11
 */
@SuppressWarnings("JpaDataSourceORMInspection")
@Entity
@Table(name = "lsh保险申请表", schema = "live", catalog = "")
public class Lsh保险申请表Model {
    private Integer 保险编号;
    private Integer 报价次数;
    private String 当前状态;
    private Timestamp 更新时间;
    private String 更新账号;

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "保险编号")
    public Integer get保险编号() {
        return 保险编号;
    }

    public void set保险编号(Integer 保险编号) {
        this.保险编号 = 保险编号;
    }

    @Basic
    @Column(name = "报价次数")
    @JsonProperty("报价次数")
    public Integer get报价次数() {
        return 报价次数;
    }

    public void set报价次数(Integer 报价次数) {
        this.报价次数 = 报价次数;
    }

    @Basic
    @Column(name = "当前状态")
    @JsonProperty("当前状态")
    public String get当前状态() {
        return 当前状态;
    }

    public void set当前状态(String 当前状态) {
        this.当前状态 = 当前状态;
    }

    @Basic
    @Column(name = "更新时间")
    @JsonProperty("更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @PrePersist
    @PreUpdate
    public void onPreUpdate() {
        this.set更新时间(new Timestamp(System.currentTimeMillis()));
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        Lsh保险申请表Model that = (Lsh保险申请表Model) o;
        if (保险编号 != null ? !保险编号.equals(that.保险编号) : that.保险编号 != null) return false;
        if (报价次数 != null ? !报价次数.equals(that.报价次数) : that.报价次数 != null) return false;
        if (当前状态 != null ? !当前状态.equals(that.当前状态) : that.当前状态 != null) return false;
        if (更新时间 != null ? !更新时间.equals(that.更新时间) : that.更新时间 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = 保险编号 != null ? 保险编号.hashCode() : 0;
        result = 31 * result + (报价次数 != null ? 报价次数.hashCode() : 0);
        result = 31 * result + (当前状态 != null ? 当前状态.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        return result;
    }

    @Basic
    @Column(name = "更新账号")
    public String get更新账号() {
        return 更新账号;
    }

    public void set更新账号(String 更新账号) {
        this.更新账号 = 更新账号;
    }
}
